Field of the Invention
The present invention relates to a method and apparatus for signaling the proper intra prediction mode to be processed for each corresponding prediction block of video data included in a digital video data transmission.
Discussion of the Related Art
A digital video signal is comprised of a sequence of digital video frames that are a representation of an original RGB video signal. As part of the analog-to-digital signal transformation, each frame of the original RGB video signal is encoded into the digital video frames of data that comprise the digital video signal. The purpose of the encoding process is to calculate as accurate a digital prediction of the original RGB video signal as possible while also attempting to maximize a compression of the binary data that is the digital representation of the original RGB video signal. While there exists both inter prediction methods and intra prediction methods for encoding a video signal, the present invention is only concerned with the intra prediction method that may also be referred to as a spatial prediction method.
In order to accomplish the encoding process, an encoding unit will process a prediction on a portion of an original video frame in order to encode it into digital video data. The resulting encoded digital video data is referred to as a prediction block or prediction unit. A plurality of prediction blocks will typically comprise a tree block of video data, a plurality of tree blocks will typically comprise a slice of video data and a plurality of slices will then typically comprise a frame of digital video data, although other configurations are possible. Pertaining specifically to the intra prediction modes that rely on spatial predictions, a current prediction block that is being processed will be predicted by referencing previously predicted samples (i.e. pixels) that spatially neighbor the current prediction block. Once all of the digital video frames have been predicted and encoded, the digital video program is said to be fully compressed and ready for storage or transmission as digital video data or a digital video transmission signal, respectively. Along with the actual digital video data, the encoding unit will also include identifying information that indicates which prediction mode was applied to predict each prediction block of video data.
A decoding unit is then tasked with performing the decoding, or decompression, of the digital video data/signal. The decoding is processed by applying the same prediction mode processing on each prediction block as was applied by the encoding unit. This is accomplished by parsing the identifying information and determining the proper prediction mode that is identified for predicting each prediction block of video data. By applying the proper prediction on each of the prediction blocks of video data, the decoding unit is able to successfully reconstruct the original video. The decoding unit is thus assigned the task of reconstructing the digital video signal into a displayable representation of the original video signal. According to the intra prediction mode for decoding a prediction block, previously reconstructed samples from previously reconstructed prediction blocks will be referenced to reconstruct samples of a current prediction block that is currently being processed by the decoding unit.
Previously, each of the many intra prediction modes for predicting a prediction block of video data was assigned its own unique codeword, or index number. However, as the number of intra prediction modes made available increased, it soon became a burden to assign each intra prediction mode its own unique codeword from a data size standpoint. Each codeword that uniquely identifies an intra prediction mode is actually a string of binary bits. And as the number of available intra prediction modes increased, so too did the maximum length of the binary bit codewords required to uniquely identify each of the available intra prediction modes. For example, if there are five intra prediction modes available to prediction process a particular prediction block, a maximum binary bit codeword length for identifying each of the five intra prediction modes may be 3-bits (e.g. 01, 10, 110, 101, 011). Then as the number of intra prediction modes made available increases, so too will the maximum length of the binary bit codeword used to identify each one of the available intra prediction modes.
Not only was the encoding unit burdened with encoding the identifying information to account for all of the available intra prediction mode codewords, the decoding unit too was burdened with accounting for all of the available intra prediction mode codewords. And most importantly, the size of the encoded video signal increased as the maximum length of the codeword needed to identify each of the available intra prediction modes increased. The more binary bits that are needed to create a unique codewords directly corresponds to the data size of the encoded video signal, and this in turn leads to less efficient compression of data.
Thus an alternative to expressly identifying each available intra prediction mode to correspond to each prediction block in an encoded video signal is needed.